#ifndef THINK_THINK_EXCEPTION_H
#define THINK_THINK_EXCEPTION_H

static char* think_exception =
	"\n"
	"// +----------------------------------------------------------------------\n"
	"// | ThinkPHP [ WE CAN DO IT JUST THINK ]\n"
	"// +----------------------------------------------------------------------\n"
	"// | Copyright (c) 2006~2018 http://thinkphp.cn All rights reserved.\n"
	"// +----------------------------------------------------------------------\n"
	"// | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )\n"
	"// +----------------------------------------------------------------------\n"
	"// | Author: 麦当苗儿 <zuojiazi@vip.qq.com> <http://zjzit.cn>\n"
	"// +----------------------------------------------------------------------\n"
	"\n"
	"namespace think;\n"
	"\n"
	"class Exception extends \\Exception\n"
	"{\n"
	"    /**\n"
	"     * @var array 保存异常页面显示的额外 Debug 数据\n"
	"     */\n"
	"    protected $data = [];\n"
	"\n"
	"    /**\n"
	"     * 设置异常额外的 Debug 数据\n"
	"     * 数据将会显示为下面的格式\n"
	"     *\n"
	"     * Exception Data\n"
	"     * --------------------------------------------------\n"
	"     * Label 1\n"
	"     *   key1      value1\n"
	"     *   key2      value2\n"
	"     * Label 2\n"
	"     *   key1      value1\n"
	"     *   key2      value2\n"
	"     *\n"
	"     * @access protected\n"
	"     * @param  string $label 数据分类，用于异常页面显示\n"
	"     * @param  array  $data  需要显示的数据，必须为关联数组\n"
	"     * @return void\n"
	"     */\n"
	"    final protected function setData($label, array $data)\n"
	"    {\n"
	"        $this->data[$label] = $data;\n"
	"    }\n"
	"\n"
	"    /**\n"
	"     * 获取异常额外 Debug 数据\n"
	"     * 主要用于输出到异常页面便于调试\n"
	"     * @access public\n"
	"     * @return array\n"
	"     */\n"
	"    final public function getData()\n"
	"    {\n"
	"        return $this->data;\n"
	"    }\n"
	"\n"
	"}\n"
	"\n"
;
#endif